OpenStack Queens : How to use Designate
2018/03/27 |
This is how to use Designate.
This example is based on the emvironment like follows.
------------+---------------------------+---------------------------+------------ | | | eth0|10.0.0.30 eth0|10.0.0.50 eth0|10.0.0.51 +-----------+-----------+ +-----------+-----------+ +-----------+-----------+ | [ Control Node ] | | [ Network Node ] | | [ Compute Node ] | | | | | | | | MariaDB RabbitMQ | | Open_vSwitch | | Libvirt | | Memcached httpd | | L2_Agent L3_Agent | | Nova_Compute | | Keystone Glance | | Metadata_Agent | | Open_vSwitch | | Nova_API Cinder_API | | Cinder_Volume | | L2_Agent | | Neutron_Server | | Heat_API | | | | Metadata_Agent | | Heat Engine | | | | Gnocchi | | Designate_Services | | | | Ceilometer_Services | | named | | | +-----------------------+ +-----------------------+ +-----------------------+ |
[1] | Login as a user you'd like to set DNS entry. It's OK to work on any node. (This example is on Control Node) For example, create a [server.education] zone. |
[cent@dlp ~(keystone)]$ openstack zone create --email dnsmaster@server.education server.education. +----------------+--------------------------------------+ | Field | Value | +----------------+--------------------------------------+ | action | CREATE | | attributes | | | created_at | 2018-03-29T02:10:05.000000 | | description | None | | email | dnsmaster@server.education | | id | 3fb0fe45-95ad-424e-a59a-9ba409a7ac7b | | masters | | | name | server.education. | | pool_id | 794ccc2c-d751-44fe-b57f-8894c9f5c842 | | project_id | b2e6fbae26044ca085edb25f7004344b | | serial | 1522289405 | | status | PENDING | | transferred_at | None | | ttl | 3600 | | type | PRIMARY | | updated_at | None | | version | 1 | +----------------+--------------------------------------+ # OK if [status] is [ACTIVE] [cent@dlp ~(keystone)]$ openstack zone list +--------------------------------------+-------------------+---------+------------+--------+--------+ | id | name | type | serial | status | action | +--------------------------------------+-------------------+---------+------------+--------+--------+ | 3fb0fe45-95ad-424e-a59a-9ba409a7ac7b | server.education. | PRIMARY | 1522289405 | ACTIVE | NONE | +--------------------------------------+-------------------+---------+------------+--------+--------+ # add A record [cent@dlp ~(keystone)]$ openstack recordset create --record '192.168.100.10' --type A server.education. www +-------------+--------------------------------------+ | Field | Value | +-------------+--------------------------------------+ | action | CREATE | | created_at | 2018-03-29T02:10:44.000000 | | description | None | | id | 4c46080d-390a-4e69-94c0-7e30d7ee5a1b | | name | www.server.education. | | project_id | b2e6fbae26044ca085edb25f7004344b | | records | 192.168.100.10 | | status | PENDING | | ttl | None | | type | A | | updated_at | None | | version | 1 | | zone_id | 3fb0fe45-95ad-424e-a59a-9ba409a7ac7b | | zone_name | server.education. | +-------------+--------------------------------------+ # OK if [status] is [ACTIVE] [cent@dlp ~(keystone)]$ openstack recordset list server.education. +--------------+-----------------------+------+------------------------------------------------ | id | name | type | records +--------------+-----------------------+------+------------------------------------------------ | 31c43b7d-... | server.education. | SOA | network.srv.world. dnsmaster.server.education. | 82bbd2c4-... | server.education. | NS | network.srv.world. | 4c46080d-... | www.server.education. | A | 192.168.100.10 +--------------+-----------------------+------+------------------------------------------------ -------------------------------+--------+--------+ | status | action | -------------------------------+--------+--------+ 1522289444 3516 600 86400 3600 | ACTIVE | NONE | | ACTIVE | NONE | | ACTIVE | NONE | -------------------------------+--------+--------+ # verify [cent@dlp ~(keystone)]$ dig -p 5354 @network.srv.world www.server.education. ; <<>> DiG 9.9.4-RedHat-9.9.4-51.el7_4.2 <<>> -p 5354 @network.srv.world www.server.education. ; (1 server found) ;; global options: +cmd ;; Got answer: ;; -<<>>HEADER<<- opcode: QUERY, status: NOERROR, id: 19692 ;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; WARNING: recursion requested but not available ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 8192 ;; QUESTION SECTION: ;www.server.education. IN A ;; ANSWER SECTION: www.server.education. 3600 IN A 192.168.100.10 ;; Query time: 42 msec ;; SERVER: 10.0.0.50#5354(10.0.0.50) ;; WHEN: Thu Mar 27 19:11:44 JST 2018 ;; MSG SIZE rcvd: 65 |
[2] | For example, create a [192.168.100.0/24] reverse zone. |
[cent@dlp ~(keystone)]$ openstack zone create --email dnsmaster@server.education 100.168.192.in-addr.arpa. +----------------+--------------------------------------+ | Field | Value | +----------------+--------------------------------------+ | action | CREATE | | attributes | | | created_at | 2018-03-29T02:17:08.000000 | | description | None | | email | dnsmaster@server.education | | id | f3ea2363-4a8d-46f0-a609-d926733fd3e1 | | masters | | | name | 100.168.192.in-addr.arpa. | | pool_id | 794ccc2c-d751-44fe-b57f-8894c9f5c842 | | project_id | b2e6fbae26044ca085edb25f7004344b | | serial | 1522289828 | | status | PENDING | | transferred_at | None | | ttl | 3600 | | type | PRIMARY | | updated_at | None | | version | 1 | +----------------+--------------------------------------+ # OK if [status] is [ACTIVE] [cent@dlp ~(keystone)]$ openstack zone list +--------------------------------------+---------------------------+---------+------------+--------+--------+ | id | name | type | serial | status | action | +--------------------------------------+---------------------------+---------+------------+--------+--------+ | 3fb0fe45-95ad-424e-a59a-9ba409a7ac7b | server.education. | PRIMARY | 1522289444 | ACTIVE | NONE | | f3ea2363-4a8d-46f0-a609-d926733fd3e1 | 100.168.192.in-addr.arpa. | PRIMARY | 1522289828 | ACTIVE | NONE | +--------------------------------------+---------------------------+---------+------------+--------+--------+ # add PTR record [cent@dlp ~(keystone)]$ openstack recordset create --record 'www.server.education.' --type PTR 100.168.192.in-addr.arpa. 10 +-------------+--------------------------------------+ | Field | Value | +-------------+--------------------------------------+ | action | CREATE | | created_at | 2018-03-29T02:17:53.000000 | | description | None | | id | 6e6f6c92-e45c-4f43-848a-2ed698c9b69e | | name | 10.100.168.192.in-addr.arpa. | | project_id | b2e6fbae26044ca085edb25f7004344b | | records | www.server.education. | | status | PENDING | | ttl | None | | type | PTR | | updated_at | None | | version | 1 | | zone_id | f3ea2363-4a8d-46f0-a609-d926733fd3e1 | | zone_name | 100.168.192.in-addr.arpa. | +-------------+--------------------------------------+ # OK if [status] is [ACTIVE] [cent@dlp ~(keystone)]$ openstack recordset list 100.168.192.in-addr.arpa. +--------------+------------------------------+------+------------------------------------------------ | id | name | type | records +--------------+------------------------------+------+------------------------------------------------ | cf59c9a4-... | 100.168.192.in-addr.arpa. | NS | network.srv.world. | ef975209-... | 100.168.192.in-addr.arpa. | SOA | network.srv.world. dnsmaster.server.education. | 6e6f6c92-... | 10.100.168.192.in-addr.arpa. | PTR | www.server.education. +--------------+------------------------------+------+------------------------------------------------ -------------------------------+--------+--------+ | status | action | -------------------------------+--------+--------+ | ACTIVE | NONE | 1522289873 3590 600 86400 3600 | ACTIVE | NONE | | ACTIVE | NONE | -------------------------------+--------+--------+ # verify [cent@dlp ~(keystone)]$ dig -p 5354 @network.srv.world -x 192.168.100.10 ; <<>> DiG 9.9.4-RedHat-9.9.4-51.el7_4.2 <<>> -p 5354 @network.srv.world -x 192.168.100.10 ; (1 server found) ;; global options: +cmd ;; Got answer: ;; -<<>>HEADER<<- opcode: QUERY, status: NOERROR, id: 39962 ;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; WARNING: recursion requested but not available ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 8192 ;; QUESTION SECTION: ;10.100.168.192.in-addr.arpa. IN PTR ;; ANSWER SECTION: 10.100.168.192.in-addr.arpa. 3600 IN PTR www.server.education. ;; Query time: 47 msec ;; SERVER: 10.0.0.50#5354(10.0.0.50) ;; WHEN: Thu Mar 29 11:18:46 JST 2018 ;; MSG SIZE rcvd: 90 |
[3] | To delete record or zone, do like follows. |
[cent@dlp ~(keystone)]$ openstack recordset list server.education. +--------------+-----------------------+------+------------------------------------------------ | id | name | type | records +--------------+-----------------------+------+------------------------------------------------ | 31c43b7d-... | server.education. | SOA | network.srv.world. dnsmaster.server.education. | 82bbd2c4-... | server.education. | NS | network.srv.world. | 4c46080d-... | www.server.education. | A | 192.168.100.10 +--------------+-----------------------+------+------------------------------------------------ -------------------------------+--------+--------+ | status | action | -------------------------------+--------+--------+ 1522289444 3516 600 86400 3600 | ACTIVE | NONE | | ACTIVE | NONE | | ACTIVE | NONE | -------------------------------+--------+--------+ # delete www record [cent@dlp ~(keystone)]$ openstack recordset delete server.education. www.server.education. +-------------+--------------------------------------+ | Field | Value | +-------------+--------------------------------------+ | action | DELETE | | created_at | 2018-03-29T02:10:44.000000 | | description | None | | id | 4c46080d-390a-4e69-94c0-7e30d7ee5a1b | | name | www.server.education. | | project_id | b2e6fbae26044ca085edb25f7004344b | | records | 192.168.100.10 | | status | PENDING | | ttl | None | | type | A | | updated_at | 2018-03-29T02:32:21.000000 | | version | 2 | | zone_id | 3fb0fe45-95ad-424e-a59a-9ba409a7ac7b | | zone_name | server.education. | +-------------+--------------------------------------+[cent@dlp ~(keystone)]$ openstack recordset list server.education. +--------------+-------------------+------+------------------------------------------------ | id | name | type | records +--------------+-------------------+------+------------------------------------------------ | 31c43b7d-... | server.education. | SOA | network.srv.world. dnsmaster.server.education. | 82bbd2c4-... | server.education. | NS | network.srv.world. +--------------+-------------------+------+------------------------------------------------ -------------------------------+--------+--------+ | status | action | -------------------------------+--------+--------+ 1522290740 3516 600 86400 3600 | ACTIVE | NONE | | ACTIVE | NONE | -------------------------------+--------+--------+[cent@dlp ~(keystone)]$ openstack zone list +--------------------------------------+---------------------------+---------+------------+--------+--------+ | id | name | type | serial | status | action | +--------------------------------------+---------------------------+---------+------------+--------+--------+ | 3fb0fe45-95ad-424e-a59a-9ba409a7ac7b | server.education. | PRIMARY | 1522290740 | ACTIVE | NONE | | f3ea2363-4a8d-46f0-a609-d926733fd3e1 | 100.168.192.in-addr.arpa. | PRIMARY | 1522289873 | ACTIVE | NONE | +--------------------------------------+---------------------------+---------+------------+--------+--------+ # delete [server.education.] zone [cent@dlp ~(keystone)]$ openstack zone delete server.education. +----------------+--------------------------------------+ | Field | Value | +----------------+--------------------------------------+ | action | DELETE | | attributes | | | created_at | 2018-03-29T02:10:05.000000 | | description | None | | email | dnsmaster@server.education | | id | 3fb0fe45-95ad-424e-a59a-9ba409a7ac7b | | masters | | | name | server.education. | | pool_id | 794ccc2c-d751-44fe-b57f-8894c9f5c842 | | project_id | b2e6fbae26044ca085edb25f7004344b | | serial | 1522290740 | | status | PENDING | | transferred_at | None | | ttl | 3600 | | type | PRIMARY | | updated_at | 2018-03-29T02:35:23.000000 | | version | 11 | +----------------+--------------------------------------+[cent@dlp ~(keystone)]$ openstack zone list +--------------------------------------+---------------------------+---------+------------+--------+--------+ | id | name | type | serial | status | action | +--------------------------------------+---------------------------+---------+------------+--------+--------+ | f3ea2363-4a8d-46f0-a609-d926733fd3e1 | 100.168.192.in-addr.arpa. | PRIMARY | 1522289873 | ACTIVE | NONE | +--------------------------------------+---------------------------+---------+------------+--------+--------+ |